Các phiên bản NukeViet

Hiện NukeViet có 2 dòng phiên bản chính:

Dòng phiên bản có nền tảng dựa trên PHP-Nuke: đã ngưng phát triển

NukeViet 1.0 [52]: Phiên bản thế hệ 1

Các phiên bản cũ NukeViet beta, NukeViet 1.0, NukeViet 1.0.1

  • Phiên bản đầu tiên của NukeViet là phiên bản NukeViet 1.0 (hay NukeViet 1.0.0) có nguồn gốc từ PHP-Nuke 6.5. Các phiên bản tiếp theo có dạng 1.0.x, về cơ bản chúng chỉ là những bản được vá lỗi do đó thường gọi là NukeViet 1.0
  • Điểm mạnh của NukeViet 1.0: Có một số lượng rất lớn các thành phần mở rộng (Module, block); giao diện (theme) được chuyển đổi từ bản dùng cho PHP-Nuke cũng như được viết mới bởi người sử dụng.
  • Dòng phiên bản đã ngưng hỗ trợ từ năm 2007 nhưng hiện vẫn còn một số ít các website vẫn sử dụng.

Phiên bản 2.0 beta:[53] (ngày 27 tháng 01 năm 2007)

Ảnh chụp giao diện trang chủ website xây dựng trên nền mã nguồn NukeViet phiên bản RC2Ảnh chụp giao diện trang quản trị website xây dựng trên nền mã nguồn NukeViet phiên bản RC2

Các phiên bản tương tự: NukeViet 2.0 beta, NukeViet 2.0 beta 1, NukeViet 2.0 beta 2, NukeViet 2.0 beta 2a

  • Phần nhân của NukeViet 2.0 beta được viết lại rất nhiều. Nếu như NukeViet 1.0 chỉ là bản Việt hóa và cải tiến từ PHP-Nuke thì NukeViet 2.0 beta được viết mới rất nhiều.
  • Điểm mạnh của NukeViet 2.0: NukeViet 2.0 có nhiều lớp bảo mật tốt hơn, tối ưu kết nối vào CSDL, một số tính năng được cải tiến hơn so với NukeViet 1.0

Phiên bản test "hậu" 2.0 beta

  • Phiên bản được giới thiệu vào tháng 4 năm 2007 nhưng không phát hành: xử lý hình ảnh trực tuyến, đa ngôn ngữ toàn diện, đa giao diện theo ứng dụng, sử dụng Ajax, hướng tới thương mại điện tử, khả năng nhận diện bản nâng cấp hệ thống, tự động bóc tách dữ liệu từ các nguồn khác nhau, tự động sao lưu CSDL...

Phiên bản chính thức: NukeViet RC

NukeViet 2.0 RC1 (ngày 24 tháng 05 năm 2009), NukeViet 2.0 RC2 (ngày 07 tháng 07 năm 2009), NukeViet 2.0 RC3 (ngày 01 tháng 03 năm 2010), NukeViet 2.0 RC4 (ngày 08 tháng 04 năm 2010).

  • Dòng phiên bản chính thức của NukeViet 2.0 được đánh dấu từ phiên bản NukeViet 2.0 RC1 phát hành ngày 24/05/2009. Đây là phiên bản nâng cấp đầu tiên kể từ sau khi bản beta cuối cùng ra mắt. Đây cũng là bản đầu tiên có hackmod (sửa đổi hệ thống PHPBB) để kết nối với mã nguồn PHPBB3 (trước đó NukeViet 2.0 beta chỉ tích hợp sẵn PHPBB2).
  • Đây là phiên bản mà NukeViet mang nhiều tính năng nhất từ trước đến nay. Với khả năng tùy biến cực cao, khả năng đa giao diện, độ bảo mật và hoàn thiện cũng hơn hẳn các phiên bản trước. Ngoài việc nâng cấp, sửa lỗi, phiên bản này còn bổ sung nhiều tính năng và thêm một loạt module như [54]:
    • Addnews (Gửi bài viết);
    • AutoTranslate (Dịch tự động);
    • Contact (Liên hệ, thay cho module Feedback của bản 1.x và 2.beta);
    • Rss (Kênh tin chia sẻ; RSS được tạo tự động bằng cách thả file rss.php phù hợp vào thư mục chứa module tương ứng cần xuất RSS);
    • Sitemap (Sơ đồ site);
    • Support (Hỗ trợ);
    • Weblinks (Liên kết website).
  • Vì những khác biệt về lập trình nên các thành phần mở rộng của NukeViet 1.0 không sử dụng chung với NukeViet 2.0 được. Các thành phần mở rộng của bản 2beta có thể sử dụng chung với bản RC2 nhưng bị hạn chế tính năng.

Cấu trúc của NukeViet 1.0 và 2.0

NukeViet 1.0 và NukeViet 2.0 có cùng cấu trúc 3 lớp:

  • Lớp lõi (nhân hệ thống) là cấu trúc chính để vận hành NukeViet
  • Lớp thành phần mở rộng bao gồm hai loại:
    • Module: Một dạng cấu trúc mở rộng của NukeViet cho phép người sử dụng có thể thêm các tính năng khác nhau cho Website của mình như: Quản lý trò chơi trực tuyến (module Games), Nghe nhạc trực tuyến (module Music, NVMusic...), Thư viện Web (module Web Links), Dịch vụ Blog (module Blog), Album ảnh trực tuyến (module Albums, Photos...), Lưu bút (module Love, Wishing và Guestbook...), Hệ thống rao vặt, quảng cáo, tạo RSS (module RSS-News), Quản lý Truyện (module Pages)...
    • Block: Một dạng cấu trúc đơn giản giúp thêm các thành phần nhỏ vào website dưới dạng các khối nhỏ trên Web.
  • Lớp giao diện (Theme) cho phép người lập trình có thể tạo ra các giao diện khác nhau cho NukeViet. Đây là thành phần quyết định giao diện mà Website tương tác với người sử dụng

Ưu nhược điểm của NukeViet 1.0 và 2.0

Ưu điểm: NukeViet được nhiều người mới sử dụng ưa thích vì các nguyên nhân sau:

  • Mã nguồn thuần Việt, cộng đồng người dùng Việt Nam đông đảo nên dễ tìm thấy sự hỗ trợ bằng tiếng Việt.
  • Quản lý đơn giản, đặc biệt module News rất phù hợp với sở thích người Việt.
  • Linh hoạt trong việc quản lý giao diện, dễ tùy biến.
  • Có thời gian phát triển lâu dài, có nhiều tài liệu hướng dẫn, tạo dựng nền tảng vững chắc trong cộng đồng.
  • Mã nguồn đơn giản, dễ dàng lập trình về giao diện.

Nhược điểm: Cho tới bản 2.0 RC, NukeViet còn những nhược điểm sau:

  • Chưa sử dụng Ajax (cho đến bản NukeViet 2.0 beta 2)
  • Vẫn sử dụng chuẩn HTML 4.1
  • Mức độ cài đặt tiện ích (Addons: Block, Modules, Themes) chưa được tự động hóa cao.

NukeViet 2.0 trở về trước, người dùng cũng nhiều, kẻ chê cũng không ít. Nhưng nhắc đến nguồn mở có yếu tố của Việt Nam nhất là Web mã nguồn mở, không thể không nhắc đến NukeViet. Mặc dù là mã nguồn mở miễn phí nhưng NukeViet "được" nhiều công ty thiết kế web sửa đổi để bán với giá cao[55]. Nhiều Website sử dụng NukeViet nhưng không ghi xuất xứ mã nguồn [56].

Dòng phiên bản chuyên nghiệp: xây dựng mới 100%

NukeViet 3

Ảnh chụp giao diện mục quản lý module - trang quản trị website xây dựng trên nền mã nguồn NukeViet phiên bản 3.0Ảnh chụp giao diện trang gửi tin- Module Tin tức - phần quản trị website xây dựng trên nền mã nguồn NukeViet phiên bản 3.0
  • Phiên bản thử nghiệm kín bao gồm Closebeta 1,2,3,4.
  • Phiên bản thử nghiệm mở rộng bao gồm Openbeta 1,2,3.
  • Phiên bản RC (tiền chính thức) bao gồm RC 1 và RC 2.
  • Phiên bản chính thức: 3.0, 3.1, 3.2, 3.3, 3.4

Điểm khác biệt về mô hình quản lý

Kể từ phiên bản 3, NukeViet được quản lý theo mô hình chuyên nghiệp của doanh nghiệp, trong đó đội lập trình chính được trả lương để thực hiện các dự án và phát triển bộ mã nguồn NukeViet[57].

Điểm khác biệt về tính năng

So với phiên bản cũ, NukeViet 3 đã khắc phục hoàn toàn nhược điểm của các phiên bản cũ trong khi vẫn giữ được các đặc tính vốn được người sử dụng ưa chuộng. NukeViet 3.0 được cho là một cuộc cách mạng của mã nguồn mở NukeViet [58][59]Toàn bộ mã nguồn được viết mới hoàn toàn dựa trên các công nghệ mới nhất gồm PHP5 và MySQL5. Website tạo ra đạt chuẩn xHTML 1.0 và CSS 2.1.So với các hệ thống khác, NukeViet 3 xây dựng dựa trên cấu trúc hướng module. Theo đó, block và theme chỉ là những nhân tố phục vụ cho module. Module, block, theme được tổ chức phân lập và tách biệt hoàn toàn khỏi nhau và không ảnh hưởng đến tính toàn vẹn của hệ thống nếu xảy ra lỗi. Đây là điểm khác biệt rất lớn mà nhờ cách tổ chức này người ta cho rằng NukeViet an ninh và bảo mật hơn các hệ thống khác cùng loại.

Cấu trúc NukeViet 3

Hệ thống NukeViet được thiết kế rất rõ ràng, mạch lạc, theo đó NukeViet phân cấu trúc thành 2 tầng, 1 lớp.

  • Tầng nền tảng (Core) hay còn gọi là "nhân hệ thống": Chứa các thư viện và module vận hành hệ thống. Nếu một trong các thành phần này bị lỗi có thể làm ảnh hưởng một phần hoặc toàn bộ hệ thống. Tầng này chiếm 10% dung lượng và dòng code của NukeViet nhưng được sử dụng trong 90% các hoạt động của website.
  • Tầng module: bao gồm module admin, module site, các block (kèm theo module hoặc chạy độc lập), các cronjob...
  • Lớp giao diện: bao gồm giao diện admin, giao diện module và giao diện site.

Đặc điểm chính:

  • Module và giao diện (theme) của NukeViet được gọi chung là các Addons (thành phần mở rộng). Các thành phần mở rộng này có thể được cài đặt hoặc gỡ bỏ mà không làm ảnh hưởng đến hệ thống.
  • Phần quản trị của hệ thống nằm toàn bộ trong thư mục admin của hệ thống. Nó được bảo vệ bằng nhiều lớp bảo mật khác nhau.
  • Phần quản trị của module nằm trong thư mục admin của module. Nó được gọi và tương tác qua phần quản trị của hệ thống nên được hệ thống kiểm soát và đảm bảo tính an toàn, bảo mật.
  • Theo nguyên lý thiết kế hướng module, block và theme được bố trí nhằm phục vụ module do đó hình thành khái niệm block của module và theme của module. Theo đó tệp tin block của module nằm trong thư mục chứa module nhưng có thể hiển thị ở các khu vực ngoài site. Nếu block không thuộc module nào thì nó được đặt trong thư mục includes/blocks của hệ thống. Tương tự, ngoài theme cho hệ thống còn có theme cho block và theme cho module (được bố trí trong thư mục theme).

Mô hình hoạt động của NukeViet 3

Dữ liệu được người quản trị tương tác từ Admin Control Panel thông qua trình duyệt, được nhân hệ thống và các module (admin module hoặc website module) tham gia xử lý, cuối cùng theme sẽ chịu trách nhiệm việc tổ chức và trình bày thông tin cho người truy cập xem.